//
//  Node.h
//  OutlineMe
//
//  Created by aaron on Mon Oct 29 2001.
//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>

// A node holdes the data that will be displayed in the outline view
// It has a string and an array of children nodes

@interface Node : NSObject {
    NSMutableArray *children;
    NSString *itemName;
	Node *parent;
}

// Accessor methods for the string
- (NSString *)itemName;
- (void)setItemName:(NSString *)s;
- (void)setParent:(Node *)n;
- (Node *)parent;

// Accessors for the children
- (void)addChild:(Node *)n;
- (void)removeChild:(Node *)n;
- (int)childrenCount;
- (Node *)childAtIndex:(int)i;

// Other properties
- (BOOL)expandable;
- (int)sum;
@end
